Users of information services are increasingly relying on cloud based processing systems for storing data. In the past, before data communication networks were commonly available, users were limited to only accessing data directly stored on their computer, or directly accessible by their computer. With the advent of local area networks, computers could access data stored on external servers. With the rise of the Internet, computers frequently access remote servers to obtain information, which in turn, may obtain data from other remote servers. Frequently, the data requested by a computer is no longer local to the computer initiating the request. Thus, data accessed by users is no longer tied to a particular personal computer, server, or computing platform.
In “cloud computing” not only will a user's data be stored on a number of remote servers, but so will be the user's applications. The particular server hosting the data and/or application for the user will likely be unknown by the user. Further, the user will likely not care how or where the application, and the data used by the application, will be stored.
For processing systems handling a large volume of information requests, the sheer volume of requests for data requires that processing systems access data in an efficient manner. The efficient design of searching, retrieving, and returning data is important for both providing timely results to the application making the request, but also for maximizing the processing capabilities of the computing infrastructure. This is particularly relevant to a cloud computing environment, where service providers may host a variety of applications requiring access to a broad spectrum of information by performing database queries.
It is with respect to these and other considerations that the disclosure made herein is presented.